/*
 * @lc app=leetcode.cn id=347 lang=javascript
 *
 * [347] 前 K 个高频元素
 */

// @lc code=start
/**
 * @param {number[]} nums
 * @param {number} k
 * @return {number[]}
 */
// 记录出现的 元素和元素的次数
// 然后做排序,取前k个
var topKFrequent = function(nums, k) {
  let map = new Map()
  for (const item of nums) {
    let m = map.get(item)
    map.set(item, (m || 0) + 1)
  }
  return Array.from(map).sort((a,b) => b[1] - a[1]).slice(0, k).map((item) => item[0])
};
// @lc code=end

